
Nombre:
GIF Movie Gear
Versión:
2.63
Editor:
GamAni
Víctima:
MOVGEAR.ESE
Serial en: HKEY_CURRENT_USER\Software\gamani\GIFMovieGear\2.0
Herramientas:
W32Dasm
HIEW
Cerebro
Cracker:
LW2000
Tutorial:
número 42
Renuncia: Este tutorial tiene una finalidad únicamente
educativa. No asumo ninguna responsabilidad por el mal uso de éste material.
1.
Vamos al diálogo de registro e introducimos
‘LW2000’ como Name y ‘1230099’ como Registration Code.
2.
¡Booom! “The information you have provided
is invalid.” ¡Mierta! ¡Code equivocado! Me parece que hemos encontrado un
‘bug’ …
3.
Anotamos el mensaje y abrimos el programa
en W32Dasm. Una vez desensamblado vamos a la ‘String Data Reference’ y buscamos
nuestra cadena:
* Referenced by a (U)nconditional or (C)onditional
Jump at Address:
|:0042C353(C)
>Vamos aquí
|
:0042C3FF 6A30 push 00000030
* Possible Reference to String Resource ID=40213:
"Invalid Registration Info"
|
:0042C401 68159D0000 push 00009D15
* Possible Reference to String Resource ID=40212:
"The information you have provided is invalid.
Please be sure"
|
:0042C406 68149D0000 push 00009D14
:0042C40B 56
push esi
:0042C40C E8DF00FEFF call 0040C4F0
:0042C411 83C410
add esp, 00000010
4.
Bien, vamos a la posición ‘0042C353’.
Deberíamos ver ahora esto:
:0042C349 E872FDFFFF call 0042C0C0 >Rutina
de comprobación
:0042C34E 83C408
add esp, 00000008
:0042C351 85C0
test eax, eax
:0042C353 0F84A6000000 je 0042C3FF
>Comprobación
5.
Cuando echemos un vistazo dentro del
‘CALL 0042C0C0’, observaremos que si el Serial Number que hemos introducido
es correcto entonces EAX será igual a ‘1’. En caso contrario EAX será igual
a ‘0’ y la comprobación fallará. Así que, ¿por qué no hacemos que EAX sea
igual a ‘1’ siempre, incluso cuando el Serial Number no sea correcto?
6.
Bien, creo que ésta idea es bastante
buena. Vamos dentro del ‘CALL’ y anotamos el offset. Ahora abrimos HIEW y
vamos a dicho offset. Ahora pulsarmo F3 para entrar el modo Edit y F2 para
introducir comandos en ensamblador.
7.
Ahora escribimos:
mov eax, 1 [Intro]
ret [Intro]
[Esc]
8.
Una vez hechos éstos cambios, veremos
esto:
:0042C0C0
B801000000 mov eax,1
:0042C0C1
C3 ret
9.
Bien, guardamos nuestro trabajo y volvemos
a intentar registrarlo.
¡Enhorabuena! ¡Ya es usted un usuario registrado!
¡Se acabó! Fácil, ¿no? ¿Algún comentario? Envíeme
un email a LW2000@gmx.net.
o vaya a http://www.LW2000.cjb.net
Gracias a tKC por sus tutoriales. Empecé leyendo su
primer tutorial y todavía sigo leyéndolos.
Traducción de: MeGaBiTe